package com.appsl.digitalparking;

import java.util.Random;

import com.appsl.manager.Redirection;

import android.os.Bundle;
import android.os.Handler;
import android.app.Activity;
import android.view.KeyEvent;
import android.view.Menu;
import android.widget.ImageButton;

public class Parking_lot extends Activity {

	final Handler mHandler = new Handler();
	
	protected void actualizar(){
		Thread hilo = new Thread(){
			public void run(){
				while(true){
					try{
						Thread.sleep(1000);
					}
					catch(InterruptedException e){
						e.printStackTrace();
					}
					mHandler.post(correrHilo);
				}
			}
		};
		hilo.start();
	}
	
	final Runnable correrHilo = new Runnable(){
		public void run(){
			Random r = new Random();
			
			int cant = r.nextInt(15)+1;
			int num_estacionamientos;
			ImageButton estacionamiento = null;
			
			for(int i=0; i<cant; i++){
				num_estacionamientos = r.nextInt(81)+1;
				switch (num_estacionamientos) {
					case 1: estacionamiento = (ImageButton) findViewById(R.id.est_1); break;
					case 2: estacionamiento = (ImageButton) findViewById(R.id.est_2); break;
					case 3: estacionamiento = (ImageButton) findViewById(R.id.est_3); break;
					case 4: estacionamiento = (ImageButton) findViewById(R.id.est_4); break;
					case 5: estacionamiento = (ImageButton) findViewById(R.id.est_5); break;
					case 6: estacionamiento = (ImageButton) findViewById(R.id.est_6); break;
					case 7: estacionamiento = (ImageButton) findViewById(R.id.est_7); break;
					case 8: estacionamiento = (ImageButton) findViewById(R.id.est_8); break;
					case 9: estacionamiento = (ImageButton) findViewById(R.id.est_9); break;
					case 10: estacionamiento = (ImageButton) findViewById(R.id.est_10); break;
					case 11: estacionamiento = (ImageButton) findViewById(R.id.est_11); break;
					case 12: estacionamiento = (ImageButton) findViewById(R.id.est_12); break;
					case 13: estacionamiento = (ImageButton) findViewById(R.id.est_13); break;
					case 14: estacionamiento = (ImageButton) findViewById(R.id.est_14); break;
					case 15: estacionamiento = (ImageButton) findViewById(R.id.est_15); break;
					case 16: estacionamiento = (ImageButton) findViewById(R.id.est_16); break;
					case 17: estacionamiento = (ImageButton) findViewById(R.id.est_17); break;
					case 18: estacionamiento = (ImageButton) findViewById(R.id.est_18); break;
					case 19: estacionamiento = (ImageButton) findViewById(R.id.est_19); break;
					case 20: estacionamiento = (ImageButton) findViewById(R.id.est_20); break;
					case 21: estacionamiento = (ImageButton) findViewById(R.id.est_21); break;
					case 22: estacionamiento = (ImageButton) findViewById(R.id.est_22); break;
					case 23: estacionamiento = (ImageButton) findViewById(R.id.est_23); break;
					case 24: estacionamiento = (ImageButton) findViewById(R.id.est_24); break;
					case 25: estacionamiento = (ImageButton) findViewById(R.id.est_25); break;
					case 26: estacionamiento = (ImageButton) findViewById(R.id.est_26); break;
					case 27: estacionamiento = (ImageButton) findViewById(R.id.est_27); break;
					case 28: estacionamiento = (ImageButton) findViewById(R.id.est_28); break;
					case 29: estacionamiento = (ImageButton) findViewById(R.id.est_29); break;
					case 30: estacionamiento = (ImageButton) findViewById(R.id.est_30); break;
					case 31: estacionamiento = (ImageButton) findViewById(R.id.est_31); break;
					case 32: estacionamiento = (ImageButton) findViewById(R.id.est_32); break;
					case 33: estacionamiento = (ImageButton) findViewById(R.id.est_33); break;
					case 34: estacionamiento = (ImageButton) findViewById(R.id.est_34); break;
					case 35: estacionamiento = (ImageButton) findViewById(R.id.est_35); break;
					case 36: estacionamiento = (ImageButton) findViewById(R.id.est_36); break;
					case 37: estacionamiento = (ImageButton) findViewById(R.id.est_37); break;
					case 38: estacionamiento = (ImageButton) findViewById(R.id.est_38); break;
					case 39: estacionamiento = (ImageButton) findViewById(R.id.est_39); break;
					case 40: estacionamiento = (ImageButton) findViewById(R.id.est_40); break;
					case 41: estacionamiento = (ImageButton) findViewById(R.id.est_41); break;
					case 42: estacionamiento = (ImageButton) findViewById(R.id.est_42); break;
					case 43: estacionamiento = (ImageButton) findViewById(R.id.est_43); break;
					case 44: estacionamiento = (ImageButton) findViewById(R.id.est_44); break;
					case 45: estacionamiento = (ImageButton) findViewById(R.id.est_45); break;
					case 46: estacionamiento = (ImageButton) findViewById(R.id.est_46); break;
					case 47: estacionamiento = (ImageButton) findViewById(R.id.est_47); break;
					case 48: estacionamiento = (ImageButton) findViewById(R.id.est_48); break;
					case 49: estacionamiento = (ImageButton) findViewById(R.id.est_49); break;
					case 50: estacionamiento = (ImageButton) findViewById(R.id.est_50); break;
					case 51: estacionamiento = (ImageButton) findViewById(R.id.est_51); break;
					case 52: estacionamiento = (ImageButton) findViewById(R.id.est_52); break;
					case 53: estacionamiento = (ImageButton) findViewById(R.id.est_53); break;
					case 54: estacionamiento = (ImageButton) findViewById(R.id.est_54); break;
					case 55: estacionamiento = (ImageButton) findViewById(R.id.est_55); break;
					case 56: estacionamiento = (ImageButton) findViewById(R.id.est_56); break;
					case 57: estacionamiento = (ImageButton) findViewById(R.id.est_57); break;
					case 58: estacionamiento = (ImageButton) findViewById(R.id.est_58); break;
					case 59: estacionamiento = (ImageButton) findViewById(R.id.est_59); break;
					case 60: estacionamiento = (ImageButton) findViewById(R.id.est_60); break;
					case 61: estacionamiento = (ImageButton) findViewById(R.id.est_61); break;
					case 62: estacionamiento = (ImageButton) findViewById(R.id.est_62); break;
					case 63: estacionamiento = (ImageButton) findViewById(R.id.est_63); break;
					case 64: estacionamiento = (ImageButton) findViewById(R.id.est_64); break;
					case 65: estacionamiento = (ImageButton) findViewById(R.id.est_65); break;
					case 66: estacionamiento = (ImageButton) findViewById(R.id.est_66); break;
					case 67: estacionamiento = (ImageButton) findViewById(R.id.est_67); break;
					case 68: estacionamiento = (ImageButton) findViewById(R.id.est_68); break;
					case 69: estacionamiento = (ImageButton) findViewById(R.id.est_69); break;
					case 70: estacionamiento = (ImageButton) findViewById(R.id.est_70); break;
					case 71: estacionamiento = (ImageButton) findViewById(R.id.est_71); break;
					case 72: estacionamiento = (ImageButton) findViewById(R.id.est_72); break;
					case 73: estacionamiento = (ImageButton) findViewById(R.id.est_73); break;
					case 74: estacionamiento = (ImageButton) findViewById(R.id.est_74); break;
					case 75: estacionamiento = (ImageButton) findViewById(R.id.est_75); break;
					case 76: estacionamiento = (ImageButton) findViewById(R.id.est_76); break;
					case 77: estacionamiento = (ImageButton) findViewById(R.id.est_77); break;
					case 78: estacionamiento = (ImageButton) findViewById(R.id.est_78); break;
					case 79: estacionamiento = (ImageButton) findViewById(R.id.est_79); break;
					case 80: estacionamiento = (ImageButton) findViewById(R.id.est_80); break;
					case 81: estacionamiento = (ImageButton) findViewById(R.id.est_81); break;
				}		
				
				//se hace un random para poner de fondo libre u ocupado
				int estado = r.nextInt(2);
				if(estado==0){
					estacionamiento.setBackgroundResource(R.drawable.vacio);
				}else{
					estacionamiento.setBackgroundResource(R.drawable.ocupado);
				}
				
			}	
		}
	};
	
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_parking_lot);
		actualizar();
	}
	
	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		// Inflate the menu; this adds items to the action bar if it is present.
		getMenuInflater().inflate(R.menu.parking_lot, menu);
		return true;
	}

	@Override
	public boolean onKeyDown(int keyCode, KeyEvent event) 
	{
	    if ((keyCode == KeyEvent.KEYCODE_BACK)) 
			Redirection.goToPiso(this);
	    
	    return super.onKeyDown(keyCode, event);
	}
}
